#include <my_header.h>
// 序列化，将结构体中的数据写入到文件
typedef struct person {
    char name[31];  // 姓名，包含一个结束字符
    int age;        // 年龄
    char gender;   // 性别（'M' = 男，'F' = 女）
} Person;

void serialize(const char *filename, Person *person)
{
    int fd = open(filename, O_WRONLY | O_CREAT | O_TRUNC);
    ERROR_CHECK(fd, -1, "open");

    ssize_t write_count = write(fd, person, sizeof(Person));
    ERROR_CHECK(write_count, -1, "write");
    close(fd);
}

/* Usage: ./5_serialize filename */
int main(int argc, char *argv[]){                                  
    ARGS_CHECK(argc, 2);

    Person p = {"张三",25, 'M'};
    serialize(argv[1], &p);
    return 0;
}


